#lang racket
(require racket/trace)
(define (inc x)
   (+ x 1))
 (define (dec x)
   (- x 1)) 
(define (add x y)
   (if (= x 0)
       y
       (inc (add (dec x) y))))
(trace add)
(add 5 6)

(define (new-add x y)
  (if (= x 0)
      y
      (new-add (dec x) (inc y))))
(trace new-add)
(new-add 4 5)
